// -----------------------------------------------------------------------------
//
// Work is licensed by Arthur Fermi (C)2008-2011,
// under Creative Commons Attribution-Share Alike 3.0 Unported License
// To receive a copy of this license please visit
// http://creativecommons.org/licenses/by-sa/3.0/
//
// You are free to copy, distribute, transmit and adapt the work
// under the following conditions:
//
// You must attribute the work in the manner specified by the 
// author(s) or licensor (but not in any way that suggests that 
// they endorse you or your use of the work). 
//
// If you alter, transform, or build upon this work in any way,
// you may distribute the resulting work only under the same or 
// similar license to this one. 
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
// See points (6) and (7) of the license for more details.
//
// -----------------------------------------------------------------------------
// Do not change anything below here or you will likely break something
// -----------------------------------------------------------------------------

// SimNet - Performance Monitor

// Global Variables
float   gfltTimer;          // How often to refresh the info

default
{
    state_entry()
    {
        llSetTimerEvent(0.2);
        llSetText("", <1,1,1>, 1);
    }

    timer()
    {
        vector  vecPos = llGetPos();                                // Current Position
        string  strSimName = llGetRegionName();                     // Sim Name
        list    lstParcelName = [PARCEL_DETAILS_NAME];              // Set list for Parcel
        string  strParcelName = (string)llGetParcelDetails(vecPos,lstParcelName);  // Parcel Name
        float   fltSimFPS = llGetRegionFPS();                       // Sim FPS
        float   fltSimDilation = llGetRegionTimeDilation();        // Sim Time Dialation
            
         // Set Hover Text
         llMessageLinked(-2, 99, strSimName + "\n" + strParcelName + "\nPosition: X: " + (string)llRound(vecPos.x) + "  Y: " + (string)llRound(vecPos.y) + "  Z: " + (string)llRound(vecPos.z) + "\n FPS: " + (string)llFloor(fltSimFPS) + "\n Time Dilation: " + (string)fltSimDilation, "");
    }
    
    on_rez(integer start_param)
    {
        llSetScriptState(llGetScriptName(), FALSE);
        llResetScript();    
    }
}

